package com.jeeplus.modules.guide.mapper;

import com.jeeplus.modules.guide.model.domain.AvgPeople;
import com.jeeplus.modules.guide.model.domain.HisQueue;
import com.jeeplus.modules.guide.model.domain.MatterArea;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * ClassName: HQueue
 * Function:  排队历史
 * Date:      2021/6/4 15:55
 *
 * @author hanKongbin
 * version    V1.0
 */

@Mapper
@Repository
public interface HisQueueMapper {

    /**
     * 统计等待时间、办理时间
     *
     * @param busId
     * @param sysNo
     * @return
     */
    HisQueue avgTimeByBusinessId(@Param("busId") String busId, @Param("sysNo") String sysNo);

    /**
     * 统计业务办理人数
     * @param busId
     * @param sysNo
     * @param startTime
     * @param endTime
     * @return
     */
    List<AvgPeople> avgPeopleByBusinessId(@Param("busId") String busId, @Param("sysNo") String sysNo, @Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 统计办件人数
     * @param startTime
     * @param endTime
     * @return
     */
    List<AvgPeople> avgPeopleAllNumber(@Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 统计预约人数
     * @param startTime
     * @param endTime
     * @return
     */
    List<AvgPeople> avgPeopleAllYY(@Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 统计评价人数
     * @param startTime
     * @param endTime
     * @return
     */
    List<AvgPeople> avgPeopleAllPJ(@Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 统计差评价人数
     * @param startTime
     * @param endTime
     * @return
     */
    List<AvgPeople> avgPeopleAllPJErr(@Param("startTime") String startTime, @Param("endTime") String endTime);

    /**
     * 查询区域信息
     *
     * @param areaIds
     * @return
     */
    List<MatterArea> queryAreaById(@Param("areaIds") List<String> areaIds);

    /**
     * 区域地址
     *
     * @param areaId
     * @return
     */
    String getAddressValue(String areaId);

    String getTypeNameValue(String businessId);
}
